package com.redepronik.medisys.cithis.entity;

import java.io.Serializable;
import javax.persistence.*;
import java.sql.Timestamp;
import java.util.List;


/**
 * The persistent class for the consultas database table.
 * 
 */
@Entity
@Table(name="consultas")
@NamedQuery(name="Consulta.findAll", query="SELECT c FROM Consulta c")
public class Consulta implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@SequenceGenerator(name="CONSULTAS_CONSULTAID_GENERATOR" )
	@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="CONSULTAS_CONSULTAID_GENERATOR")
	@Column(unique=true, nullable=false)
	private Long consultaid;

	private float estatura;

	@Column(nullable=false)
	private Timestamp fecha;

	private float frecuenciacardiaca;

	private Integer frecuenciarespiratoria;

	@Column(length=2147483647)
	private String notas;

	@Column(nullable=false)
	private Integer numero;

	private float peso;

	private Integer presiondiastolica;

	private Integer presionsistolica;

	@Column(length=2147483647)
	private String recomendaciones;

	private float temperatura;

	//bi-directional many-to-one association to Consultaexamene
	@OneToMany(mappedBy="consulta")
	private List<ConsultaExamen> consultaexamenes;

	//bi-directional many-to-one association to Consultaradiografia
	@OneToMany(mappedBy="consulta")
	private List<ConsultaRadiografia> consultaradiografias;

	//bi-directional many-to-one association to Aseguradoraafiliado
	@ManyToOne
	@JoinColumn(name="aseguradoraafiliadoid", nullable=false)
	private AseguradoraAfiliado aseguradoraafiliado;

	//bi-directional many-to-one association to Cita
	@ManyToOne
	@JoinColumn(name="citasid", nullable=false)
	private Cita cita;

	//bi-directional many-to-one association to Evaluacione
	@OneToMany(mappedBy="consulta")
	private List<Evaluacion> evaluaciones;

	//bi-directional many-to-one association to Receta
	@OneToMany(mappedBy="consulta")
	private List<Receta> recetas;

	public Consulta() {
	}

	public Long getConsultaid() {
		return this.consultaid;
	}

	public void setConsultaid(Long consultaid) {
		this.consultaid = consultaid;
	}

	public float getEstatura() {
		return this.estatura;
	}

	public void setEstatura(float estatura) {
		this.estatura = estatura;
	}

	public Timestamp getFecha() {
		return this.fecha;
	}

	public void setFecha(Timestamp fecha) {
		this.fecha = fecha;
	}

	public float getFrecuenciacardiaca() {
		return this.frecuenciacardiaca;
	}

	public void setFrecuenciacardiaca(float frecuenciacardiaca) {
		this.frecuenciacardiaca = frecuenciacardiaca;
	}

	public Integer getFrecuenciarespiratoria() {
		return this.frecuenciarespiratoria;
	}

	public void setFrecuenciarespiratoria(Integer frecuenciarespiratoria) {
		this.frecuenciarespiratoria = frecuenciarespiratoria;
	}

	public String getNotas() {
		return this.notas;
	}

	public void setNotas(String notas) {
		this.notas = notas;
	}

	public Integer getNumero() {
		return this.numero;
	}

	public void setNumero(Integer numero) {
		this.numero = numero;
	}

	public float getPeso() {
		return this.peso;
	}

	public void setPeso(float peso) {
		this.peso = peso;
	}

	public Integer getPresiondiastolica() {
		return this.presiondiastolica;
	}

	public void setPresiondiastolica(Integer presiondiastolica) {
		this.presiondiastolica = presiondiastolica;
	}

	public Integer getPresionsistolica() {
		return this.presionsistolica;
	}

	public void setPresionsistolica(Integer presionsistolica) {
		this.presionsistolica = presionsistolica;
	}

	public String getRecomendaciones() {
		return this.recomendaciones;
	}

	public void setRecomendaciones(String recomendaciones) {
		this.recomendaciones = recomendaciones;
	}

	public float getTemperatura() {
		return this.temperatura;
	}

	public void setTemperatura(float temperatura) {
		this.temperatura = temperatura;
	}

	public List<ConsultaExamen> getConsultaexamenes() {
		return this.consultaexamenes;
	}

	public void setConsultaexamenes(List<ConsultaExamen> consultaexamenes) {
		this.consultaexamenes = consultaexamenes;
	}

	public ConsultaExamen addConsultaexamene(ConsultaExamen consultaexamene) {
		getConsultaexamenes().add(consultaexamene);
		consultaexamene.setConsulta(this);

		return consultaexamene;
	}

	public ConsultaExamen removeConsultaexamene(ConsultaExamen consultaexamene) {
		getConsultaexamenes().remove(consultaexamene);
		consultaexamene.setConsulta(null);

		return consultaexamene;
	}

	public List<ConsultaRadiografia> getConsultaradiografias() {
		return this.consultaradiografias;
	}

	public void setConsultaradiografias(List<ConsultaRadiografia> consultaradiografias) {
		this.consultaradiografias = consultaradiografias;
	}

	public ConsultaRadiografia addConsultaradiografia(ConsultaRadiografia consultaradiografia) {
		getConsultaradiografias().add(consultaradiografia);
		consultaradiografia.setConsulta(this);

		return consultaradiografia;
	}

	public ConsultaRadiografia removeConsultaradiografia(ConsultaRadiografia consultaradiografia) {
		getConsultaradiografias().remove(consultaradiografia);
		consultaradiografia.setConsulta(null);

		return consultaradiografia;
	}

	public AseguradoraAfiliado getAseguradoraafiliado() {
		return this.aseguradoraafiliado;
	}

	public void setAseguradoraafiliado(AseguradoraAfiliado aseguradoraafiliado) {
		this.aseguradoraafiliado = aseguradoraafiliado;
	}

	public Cita getCita() {
		return this.cita;
	}

	public void setCita(Cita cita) {
		this.cita = cita;
	}

	public List<Evaluacion> getEvaluaciones() {
		return this.evaluaciones;
	}

	public void setEvaluaciones(List<Evaluacion> evaluaciones) {
		this.evaluaciones = evaluaciones;
	}

	public Evaluacion addEvaluacione(Evaluacion evaluacione) {
		getEvaluaciones().add(evaluacione);
		evaluacione.setConsulta(this);

		return evaluacione;
	}

	public Evaluacion removeEvaluacione(Evaluacion evaluacione) {
		getEvaluaciones().remove(evaluacione);
		evaluacione.setConsulta(null);

		return evaluacione;
	}

	public List<Receta> getRecetas() {
		return this.recetas;
	}

	public void setRecetas(List<Receta> recetas) {
		this.recetas = recetas;
	}

	public Receta addReceta(Receta receta) {
		getRecetas().add(receta);
		receta.setConsulta(this);

		return receta;
	}

	public Receta removeReceta(Receta receta) {
		getRecetas().remove(receta);
		receta.setConsulta(null);

		return receta;
	}

}